﻿using Loki.IoC;
using Loki.IoC.Registration;
using Luna.Data.Budget;

namespace Luna.Data
{
    public class BudgetInstaller : LokiContextInstaller
    {
        public override void Install(IObjectContext context)
        {
            context.Register(Element.Entity<ICategoryData, CategoryData>());
            context.Register(Element.Entity<IBudgetData, BudgetData>());
            context.Register(Element.Entity<ILineData, LineData>());

            context.Register(Element.Service<IBudgetProvider, BudgetProvider>());

            context.Register(Element.For<CategoryDataMapper>());
            context.Register(Element.For<BudgetDataMapper>());
            context.Register(Element.For<LineDataMapper>());
        }
    }
}